({
    appDir: '../',

    dir: '../build', // 用于指定构建后文件的输出目录

    baseUrl: './src',

    // JS 文件优化方式，目前支持以下几种：
    //   uglify: （默认） 使用 UglifyJS 来压缩代码
    //   closure: 使用 Google's Closure Compiler 的简单优化模式
    //   closure.keepLines: 使用 closure，但保持换行
    //   none: 不压缩代码
    optimize: "uglify",

    // 使用 UglifyJS 时的可配置参数
    // See https://github.com/mishoo/UglifyJS for the possible values.
    uglify: {
        toplevel: true,
        ascii_only: true,
        beautify: true,
        max_line_length: 1000
    },

    // 使用 Closure Compiler 时的可配置参数
    closure: {
        CompilerOptions: {},
        CompilationLevel: 'SIMPLE_OPTIMIZATIONS',
        loggingLevel: 'WARNING'
    },

    // CSS 优化方式，目前支持以下几种：
    // none: 不压缩，仅合并
    // standard: 标准压缩，移除注释、换行，以及可能导致 IE 解析出错的代码
    // standard.keepLines: 除标准压缩外，保留换行
    // standard.keepComments: 除标准压缩外，保留注释 (r.js 1.0.8+)
    // standard.keepComments.keepLines: 除标准压缩外，保留注释和换行 (r.js 1.0.8+)
    optimizeCss: "standard.keepLines",

    // 是否忽略 CSS 资源文件中的 @import 指令
    cssImportIgnore: null,

    // 一般用于命令行，可将多个 CSS 资源文件打包成单个 CSS 文件
    // cssIn: "path/to/main.css",
    // out: "path/to/css-optimized.css",

    // 处理所有的文本资源依赖项，从而避免为加载资源而产生的大量单独xhr请求
    // inlineText: true,

    modules:  [ //要优化的模块
        { name: 'main' }, //说白了就是各页面的入口文件，相对baseUrl的路径，也是省略后缀“.js”
        { name: 'login/loginController' },
        { name: 'home/homeController' },
        {
            name: 'header/headerController',
            exclude: [
                "lazyload"
            ]
        },
        {
            name: 'footer/footerController',
            exclude: [
                "lazyload"
            ]
        }
    ],

    // modules: {

    //     // 'name': 'src/top/home',
    //     // 'name': 'src/top/message',
    //     // 'name': 'src/top/profiles',
    //     // 'name': 'src/top/settings'
    // },

    fileExclusionRegExp: /^(r|build)\.js|.*\.scss$|node_modules|doc|config|build|package\.json|README\.md|yarn\.lock|\.gitignore|\.git|\.DS_Store/, //过滤，匹配到的文件将不会被输出到输出目录去

    optimizeCss:   'standard',

    removeCombined:  true, //如果为true，将从输出目录中删除已合并的文件

    // paths: {
    //     'jquery': '../deps/jquery/jquery',
    //     'angular': '../deps/angularjs/angular',
    //     'ui.router': '../deps/ui-router/angular-ui-router',
    //     'ui.bootstrap': '../deps/ui-bootstrap/js/ui-bootstrap',
    //     'ui.bootstrap.tpls': '../deps/ui-bootstrap/js/ui-bootstrap-tpls',
    //     'oclazyload': '../deps/oclazyload/oclazyload',
    //     'webix': '../deps/webix/webix_debug',
    //     'webix.angular': '../deps/webix-angular/webix-angular',
    // },

    // shim: {
    //     'ui.router': ['angular'],
    //     'oclazyload': ['angular'],
    //     'webix': ['angular'],
    //     'webix.angular': ['webix'],
    //     // 'common/lazyload': ['angular'],
    //     'ui.bootstrap': ['angular', 'jquery'],
    //     'ui.bootstrap.tpls': ['ui.bootstrap'],
    // }

    paths: {
        'jquery': '../deps/jquery/jquery',
        'angular': '../deps/angularjs/angular',
        'ui.router': '../deps/ui-router/angular-ui-router',
        'ui.bootstrap': '../deps/ui-bootstrap/js/ui-bootstrap',
        'ui.bootstrap.tpls': '../deps/ui-bootstrap/js/ui-bootstrap-tpls',
        'oclazyload': '../deps/oclazyload/oclazyload',
        'webix': '../deps/webix/webix_debug',
        'webix.angular': '../deps/webix-angular/webix-angular',
        'lazyload': 'common/lazyload'
    },
    waitSeconds: 0,
    shim: {
        'ui.router': ['angular'],
        'oclazyload': ['angular'],
        'webix': ['angular'],
        'webix.angular': ['webix'],
        'ui.bootstrap': ['angular', 'jquery'],
        'ui.bootstrap.tpls': ['ui.bootstrap'],
        'app': ['lazyload', 'angular', 'webix', 'webix.angular', 'ui.bootstrap', 'ui.bootstrap.tpls', 'jquery', 'ui.router', 'oclazyload'],
        'appRouter': 'app'
    }
});